package cc.mrbird.system.domain;

import cc.mrbird.common.annotation.ExportConfig;
import cn.afterturn.easypoi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

@Table(name = "project_entry")
public class ProjectEntry implements Serializable {
    @Id
    @Column(name = "PROJECT_ID")
    private Integer projectId;

    /**
     * 客户
     */
    @Column(name = "CUSTOMER")
    @ExportConfig(value = "客户")
    @Excel(name = "客户",isImportField = "CUSTOMER")
    private String customer;

    /**
     * 市场名
     */
    @Column(name = "MARKET_NAME")
    @ExportConfig(value = "市场名")
    @Excel(name = "市场名",isImportField = "MARKET_NAME")
    private String marketName;

    /**
     * 项目代号
     */
    @Column(name = "PROJECT_NO")
    @ExportConfig(value = "项目代号")
    @Excel(name = "项目代号",isImportField = "PROJECT_NO")
    private String projectNo;

    /**
     * 项目基线
     */
    @Column(name = "PROJECT_BASE_LINE")
    @ExportConfig(value = "项目基线")
    @Excel(name = "项目基线",isImportField = "PROJECT_BASE_LINE")
    private String projectBaseLine;

    /**
     * 项目类型 
     */
    @Column(name = "PROJECT_TYPE")
    @ExportConfig(value = "项目类型")
    @Excel(name = "项目类型",isImportField = "PROJECT_TYPE")
    private String projectType;

    /**
     * 机型名
     */
    @Column(name = "TYPE_NAME")
    @ExportConfig(value = "机型名")
    @Excel(name = "机型名",isImportField = "TYPE_NAME")
    private String typeName;

    /**
     * 内存大小
     */
    @Column(name = "MEMORY_SIZE")
    @ExportConfig(value = "内存大小")
    @Excel(name = "内存大小",isImportField = "MEMORY_SIZE")
    private String memorySize;

    /**
     * 创建时间
     */
    @Column(name = "CREATE_TIME")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExportConfig(value = "创建时间", convert = "c:cc.mrbird.common.util.poi.convert.TimeConvert")
    private Date createTime;

    /**
     * 修改时间
     */
    @Column(name = "UPDATE_TIME")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExportConfig(value = "修改时间", convert = "c:cc.mrbird.common.util.poi.convert.TimeConvert")
    private Date updateTime;

    /**
     * @return PROJECT_ID
     */
    public Integer getProjectId() {
        return projectId;
    }

    /**
     * @param projectId
     */
    public void setProjectId(Integer projectId) {
        this.projectId = projectId;
    }

    /**
     * 获取客户
     *
     * @return CUSTOMER - 客户
     */
    public String getCustomer() {
        return customer;
    }

    /**
     * 设置客户
     *
     * @param customer 客户
     */
    public void setCustomer(String customer) {
        this.customer = customer == null ? null : customer.trim();
    }

    /**
     * 获取市场名
     *
     * @return MARKET_NAME - 市场名
     */
    public String getMarketName() {
        return marketName;
    }

    /**
     * 设置市场名
     *
     * @param marketName 市场名
     */
    public void setMarketName(String marketName) {
        this.marketName = marketName == null ? null : marketName.trim();
    }

    /**
     * 获取项目代号
     *
     * @return PROJECT_NO - 项目代号
     */
    public String getProjectNo() {
        return projectNo;
    }

    /**
     * 设置项目代号
     *
     * @param projectNo 项目代号
     */
    public void setProjectNo(String projectNo) {
        this.projectNo = projectNo == null ? null : projectNo.trim();
    }

    /**
     * 获取项目基线
     *
     * @return PROJECT_BASE_LINE - 项目基线
     */
    public String getProjectBaseLine() {
        return projectBaseLine;
    }

    /**
     * 设置项目基线
     *
     * @param projectBaseLine 项目基线
     */
    public void setProjectBaseLine(String projectBaseLine) {
        this.projectBaseLine = projectBaseLine == null ? null : projectBaseLine.trim();
    }

    /**
     * 获取项目类型 
     *
     * @return PROJECT_TYPE - 项目类型 
     */
    public String getProjectType() {
        return projectType;
    }

    /**
     * 设置项目类型 
     *
     * @param projectType 项目类型 
     */
    public void setProjectType(String projectType) {
        this.projectType = projectType == null ? null : projectType.trim();
    }

    /**
     * 获取机型名
     *
     * @return TYPE_NAME - 机型名
     */
    public String getTypeName() {
        return typeName;
    }

    /**
     * 设置机型名
     *
     * @param typeName 机型名
     */
    public void setTypeName(String typeName) {
        this.typeName = typeName == null ? null : typeName.trim();
    }

    /**
     * 获取内存大小
     *
     * @return MEMORY_SIZE - 内存大小
     */
    public String getMemorySize() {
        return memorySize;
    }

    /**
     * 设置内存大小
     *
     * @param memorySize 内存大小
     */
    public void setMemorySize(String memorySize) {
        this.memorySize = memorySize == null ? null : memorySize.trim();
    }

    /**
     * 获取创建时间
     *
     * @return CREATE_TIME - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取修改时间
     *
     * @return UPDATE_TIME - 修改时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置修改时间
     *
     * @param updateTime 修改时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}